Data and Reality
エンティティとは何か? リレーションシップとは何か? 属性とは何か? そこには生来的な決まりがあるのか? という問いについていろんな角度から掘り下げている名著。
エンティティ
ある著者が2冊の本と書いたとする。
図書目録には2つの表現(レコード)を持つことになる。
もし図書館がそれぞれ5冊ずつの回覧用のコピーを持っていれば、10個の表現をもつことになる。
命名
属性
リレーションシップと属性の違いは曖昧である。
例えば自動車の属性を考える。「車種」や「色」が属性としてあげられる。
https://gyazo.com/3c47087d169d5c1f41521e7ef68f5506
これらの属性は、リソースエンティティの「色」や「車種」があって、自動車エンティティがそれらのキーを属性としてもつことになるだろう。
https://gyazo.com/33ba7e5254472351efbc4b00aae71c64
ところで色は自動車につき1色とは限らない。ツートンカラーなどの車もあるので、これを表現するには次のような関係性になるだろう。すなわち「自動車」と「色」のリレーションシップとして「配色」によって結ばれる。
https://gyazo.com/20918d95add6dd970a7fd6175ee8a7b7
さらには、その使われる色の割合など、このリレーションシップが属性を持つこともあるだろう。
https://gyazo.com/e64bf15981f59befce130623eb4bedb4
このように、属性とリレーションシップの違いは曖昧である。